#include "mycoin.h"
#include <QPixmap>
#include <QTimer>
#include <QString>

MyCoin::MyCoin(QString img)
{
    QPixmap pix;
    pix.load(img);

    this->setFixedSize(pix.width(),pix.height());
    this->setStyleSheet("QPushButton{border:0px;}");
    this->setIcon(pix);
    this->setIconSize(QSize(pix.width(),pix.height()));

    //定时器初始化
    timer1 = new QTimer(this);
    timer2 = new QTimer(this);

    //监听定时器信号，并翻转金币
    connect(timer1,&QTimer::timeout,[=](){
        QPixmap pix;
        QString str = QString(":/res/Coin000%1").arg(this->min++);
        pix.load(str);

        this->setFixedSize(pix.width(),pix.height());
        this->setStyleSheet("QPushButton{border:0px;}");
        this->setIcon(pix);
        this->setIconSize(QSize(pix.width(),pix.height()));

        //判断 如果翻完了 将min重置为1
        if(this->min > this->max)
        {
            this->min = 1;

            timer1->stop();
        }
    });

    connect(timer2,&QTimer::timeout,[=](){
        QPixmap pix;
        QString str = QString(":/res/Coin000%1").arg(this->max--);
        pix.load(str);

        this->setFixedSize(pix.width(),pix.height());
        this->setStyleSheet("QPushButton{border:0px;}");
        this->setIcon(pix);
        this->setIconSize(QSize(pix.width(),pix.height()));

        //判断 如果翻完了 将min重置为1
        if(this->max < this->min)
        {
            this->max = 8;

            timer2->stop();
        }
    });
}

//void MyCoin::mousePressEvent(QMouseEvent* e)
//{
//    if(this->isWin)
//    {
//        return ;
//    }
//    else
//    {
//        QPushButton::mouseMoveEvent(e);
//    }
//}


void MyCoin::ChangeFlag()
{
    //如果是正面   正面翻反面
    if(this->flag)
    {

        //开始正面翻反面定时器
        timer1->start(30);

        this->flag = false;
    }
    else
    {

        timer2->start(30);

        this->flag = true;
    }
}
